package com.heima.article.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.heima.model.article.dtos.ArticleCommentDto;
import com.heima.model.article.dtos.ArticleHomeDto;
import com.heima.model.article.pojos.ApArticle;
import com.heima.model.article.vos.ArticleCommnetVo;
import com.heima.model.wemedia.dtos.WmCommentDto;
import com.heima.model.article.vos.ArticleCommnetVo;
import com.heima.model.common.dtos.ResponseResult;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @author 陈辉
 * @data 2023 16:04
 */
@Mapper
public interface ApArticleMapper extends BaseMapper<ApArticle> {

    List<ApArticle> loadArticleList(@Param("dto") ArticleHomeDto dto,
                                    @Param("type") Short type);

    List<ApArticle> findArticleListByLast5days(@Param("dateParam") Date dateParam);

    /**
     * 查看所有评论
     * @param dto
     * @return
     */
    List<ArticleCommnetVo> findNewsComments(@Param("dto") WmCommentDto dto);


    int findNewsCommentsCount(@Param("dto") WmCommentDto dto);


    Map queryLikesAndConllections(@Param("wmUserId") Integer wmUserId, @Param("beginDate") Date beginDate, @Param("endDate")  Date endDate);
    /**
     * 查找文章评论列表
     *
     * @param dto 评论实体
     * @return List<ArticleCommentVo>
     */
    List<ArticleCommnetVo> findNewsComments(@Param("dto") ArticleCommentDto dto);

    /**
     * 查找评论总数
     *
     * @param dto 评论实体
     * @return int
     */
    int findNewsCommentsCount(@Param("dto")  ArticleCommentDto dto);
}
